package entity;

import java.util.List;
import javax.ejb.Remote;

/**
 * Remote interface for FichaEndodonticaFacade.
 * 
 * @author MyEclipse Persistence Tools
 */
@Remote
public interface FichaEndodonticaFacadeRemote {
	/**
	 * Perform an initial save of a previously unsaved FichaEndodontica entity.
	 * All subsequent persist actions of this entity should use the #update()
	 * method.
	 * 
	 * @param entity
	 *            FichaEndodontica entity to persist
	 * @throws RuntimeException
	 *             when the operation fails
	 */
	public void save(FichaEndodontica entity);

	/**
	 * Delete a persistent FichaEndodontica entity.
	 * 
	 * @param entity
	 *            FichaEndodontica entity to delete
	 * @throws RuntimeException
	 *             when the operation fails
	 */
	public void delete(FichaEndodontica entity);

	/**
	 * Persist a previously saved FichaEndodontica entity and return it or a
	 * copy of it to the sender. A copy of the FichaEndodontica entity parameter
	 * is returned when the JPA persistence mechanism has not previously been
	 * tracking the updated entity.
	 * 
	 * @param entity
	 *            FichaEndodontica entity to update
	 * @return FichaEndodontica the persisted FichaEndodontica entity instance,
	 *         may not be the same
	 * @throws RuntimeException
	 *             if the operation fails
	 */
	public FichaEndodontica update(FichaEndodontica entity);

	public FichaEndodontica findById(Integer id);

	/**
	 * Find all FichaEndodontica entities with a specific property value.
	 * 
	 * @param propertyName
	 *            the name of the FichaEndodontica property to query
	 * @param value
	 *            the property value to match
	 * @param rowStartIdxAndCount
	 *            Optional int varargs. rowStartIdxAndCount[0] specifies the the
	 *            row index in the query result-set to begin collecting the
	 *            results. rowStartIdxAndCount[1] specifies the the maximum
	 *            count of results to return.
	 * @return List<FichaEndodontica> found by query
	 */
	public List<FichaEndodontica> findByProperty(String propertyName,
			Object value, int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByNomeAluno(Object nomeAluno,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByNomePaciente(Object nomePaciente,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByDataDeNasc(Object dataDeNasc,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByProfissao(Object profissao,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByEstadoCivil(Object estadoCivil,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByEndereco(Object endereco,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByNumero(Object numero,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByCidade(Object cidade,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByBairro(Object bairro,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByTelefone(Object telefone,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByAnoAluno(Object anoAluno,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByEncaminhamento(Object encaminhamento,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByRazaoConsulta(Object razaoConsulta,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByObservacoes(Object observacoes,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findBySemiologiaSubjetiva(
			Object semiologiaSubjetiva, int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByTesteDeVitalidadePulpar(
			Object testeDeVitalidadePulpar, int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByPercussao(Object percussao,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByPalpacao(Object palpacao,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByRadiograficos(Object radiograficos,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByTesteCavidade(Object testeCavidade,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByTesteDeAnestesia(
			Object testeDeAnestesia, int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByCanaisRadiculares(
			Object canaisRadiculares, int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByRaizes(Object raizes,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByTecidosParaEndodonticos(
			Object tecidosParaEndodonticos, int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByDiagnostico(Object diagnostico,
			int... rowStartIdxAndCount);

	public List<FichaEndodontica> findByTratamentoIndicado(
			Object tratamentoIndicado, int... rowStartIdxAndCount);

	/**
	 * Find all FichaEndodontica entities.
	 * 
	 * @param rowStartIdxAndCount
	 *            Optional int varargs. rowStartIdxAndCount[0] specifies the the
	 *            row index in the query result-set to begin collecting the
	 *            results. rowStartIdxAndCount[1] specifies the the maximum
	 *            count of results to return.
	 * @return List<FichaEndodontica> all FichaEndodontica entities
	 */
	public List<FichaEndodontica> findAll(int... rowStartIdxAndCount);
}